/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package logica;

import fisica.CapaFisica;
import fisica.EcoestressEstudioCardiologiaFisica;
import hibernate.objeto.EcoestressEstudioCardiologia;

/**
 *
 * @author Gonzalo
 */
public class EcoestressEstudioCardiologiaLogica extends CapaLogica {

    /**
     * Crea y persiste el examen Ecoestress del estudio de cardiología.
     *
     * @param datosEstudioCardiologia Los datos del estudio Ecoestress
     * creado para su posterior recuperación
     * @param idEcoestressEstudioCardiologia El id del objeto
     * @return true si se agregó correctamente, false en caso contrario
     */
    public static boolean agregarEcoestressEstudioCardiologia(
            Object[] datosEstudioCardiologia,
            int[] idEcoestressEstudioCardiologia) {
        //Crea el objeto
        EcoestressEstudioCardiologia ecoestressEstudioCardiologia =
                crearObjetoEcoestressEstudioCardiologia(datosEstudioCardiologia);

        //Persiste el objeto
        if (CapaFisica.guardarOActualizarObjeto(ecoestressEstudioCardiologia)) {
            idEcoestressEstudioCardiologia[0] = ecoestressEstudioCardiologia
                    .getIdEcoestressEstudioCardiologia();
            return true;
        } else {
            return false;
        }
    }

    /**
     * Crea el objeto Ecoestress.
     *
     * @param datosEstudioCardiologia Los datos del Ecoestress
     * @return El objeto creado
     */
    private static EcoestressEstudioCardiologia
            crearObjetoEcoestressEstudioCardiologia(
            Object[] datosEstudioCardiologia) {

        EcoestressEstudioCardiologia EcoestressEstudioCardiologia =
                new EcoestressEstudioCardiologia();

        EcoestressEstudioCardiologia.setAngorEcoestressEstudioCardiologia(
                datosEstudioCardiologia[CapaLogica.
                ESTUDIO_CARDIOLOGIA_ECOESTRESS_ANGOR].toString());

        EcoestressEstudioCardiologia.setApremioEcoestressEstudioCardiologia(
                datosEstudioCardiologia[CapaLogica.
                ESTUDIO_CARDIOLOGIA_ECOESTRESS_APREMIO].toString());

        EcoestressEstudioCardiologia.setConclusionesEcoestressEstudioCardiologia(
                datosEstudioCardiologia[CapaLogica.
                ESTUDIO_CARDIOLOGIA_ECOESTRESS_CONCLUSIONES].toString());

        EcoestressEstudioCardiologia.setEcoBasalEcoestressEstudioCardiologia(
                datosEstudioCardiologia[CapaLogica.
                ESTUDIO_CARDIOLOGIA_ECOESTRESS_ECO_BASAL].toString());

        EcoestressEstudioCardiologia.setEcoMaximaCargaEcoestressEstudioCardiologia(
                datosEstudioCardiologia[CapaLogica.
                ESTUDIO_CARDIOLOGIA_ECOESTRESS_ECO_MAXIMA_CARGA].toString());

        EcoestressEstudioCardiologia.setFcBasalEcoestressEstudioCardiologia(
                (Integer)datosEstudioCardiologia[CapaLogica.
                ESTUDIO_CARDIOLOGIA_ECOESTRESS_FC_BASAL]);

        EcoestressEstudioCardiologia.setSegmentoStEcoestressEstudioCardiologia(
                (Float)datosEstudioCardiologia[CapaLogica.
                ESTUDIO_CARDIOLOGIA_ECOESTRESS_SEGMENTO_ST]);

        EcoestressEstudioCardiologia.setTensionArterialBasalDiastolicaEcoestressEstudioCardiologi(
                (Integer)datosEstudioCardiologia[CapaLogica.
                ESTUDIO_CARDIOLOGIA_ECOESTRESS_TENSION_ARTERIAL_BASAL_DIASTOLICA]);

        EcoestressEstudioCardiologia.setTensionArterialMaximoEsfuerzoDiastolicaEcoestressEstudio(
                (Integer)datosEstudioCardiologia[CapaLogica.
                ESTUDIO_CARDIOLOGIA_ECOESTRESS_TENSION_ARTERIAL_MAXIMO_ESFUERZO_DIASTOLICA]);

        EcoestressEstudioCardiologia.setTensionArterialMaximoEsfuerzoSistolicaEcoestressEstudioC(
                (Integer)datosEstudioCardiologia[CapaLogica.
                ESTUDIO_CARDIOLOGIA_ECOESTRESS_TENSION_ARTERIAL_MAXIMO_ESFUERZO_SISTOLICA]);

        EcoestressEstudioCardiologia.setTensionArterialBasalSistolicaEcoestressEstudioCardiologia(
                (Integer)datosEstudioCardiologia[CapaLogica.
                ESTUDIO_CARDIOLOGIA_ECOESTRESS_TENSION_ARTERIAL_BASAL_SISTOLICA]);

        return EcoestressEstudioCardiologia;
    }

    /**
     * Retorna el objeto EcoestressEstudioCardiologia según el id.
     *
     * @param idEcoestressEstudioCardiologia  El id del
     * Ecoestress
     * @return El objeto EcoestressEstudioCardiologia consultado, null si no existe
     */
    static EcoestressEstudioCardiologia getEcoestressEstudioCardiologiaPorId(
            int idEcoestressEstudioCardiologia) {
        return EcoestressEstudioCardiologiaFisica
                .getEcoestressEstudioCardiologiaPorId(
                idEcoestressEstudioCardiologia);
    }

}
